﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Runtime.Serialization;

namespace Sausage.Web.Models
{
    /// <summary>
    /// 工程项目列表行视图模型
    /// </summary>
    /// <remarks></remarks>
    [DataContract]
    public class ProjectListRow
    {
        #region ---Property

        /// <summary>
        /// 获得或者设置项目编号。
        /// </summary>
        /// <value>项目编号。</value>
        /// <remarks></remarks>
        [DataMember]
        public Guid ProjectID
        {
            get;
            set;
        }

        /// <summary>
        /// 获得或者设置项目编码。
        /// </summary>
        /// <value>项目编码。</value>
        /// <remarks></remarks>
        [DataMember]
        public string ProjectCode
        {
            get;
            set;
        }

        /// <summary>
        /// 获得或者设置项目名称。
        /// </summary>
        /// <value>项目名称。</value>
        /// <remarks></remarks>
        [DataMember]
        public string ProjectName
        {
            get;
            set;
        }

        /// <summary>
        /// 获得或者设置所属单位名称。
        /// </summary>
        /// <value>所属单位名称。</value>
        /// <remarks></remarks>
        [DataMember]
        public string Organization
        {
            get;
            set;
        }

        /// <summary>
        /// 获得或者设置项目类型。
        /// </summary>
        /// <value>项目类型。</value>
        /// <remarks></remarks>
        [DataMember]
        public Guid CategoryID
        {
            get;
            set;
        }

        /// <summary>
        /// 获得或者设置项目类型。
        /// </summary>
        /// <value>项目类型。</value>
        /// <remarks></remarks>
        [DataMember]
        public string Category
        {
            get;
            set;
        }

        /// <summary>
        /// 获得或者设置路线名称。
        /// </summary>
        /// <value>路线名称。</value>
        /// <remarks></remarks>
        [DataMember]
        public string Roadway
        {
            get;
            set;
        }

        /// <summary>
        /// 获得或者设置起点桩号。
        /// </summary>
        /// <value>路线名称。</value>
        /// <remarks></remarks>
        [DataMember]
        public string BeginStake
        {
            get;
            set;
        }

        /// <summary>
        /// 获得或者设置终点桩号。
        /// </summary>
        /// <value>路线名称。</value>
        /// <remarks></remarks>
        [DataMember]
        public string EndStake
        {
            get;
            set;
        }

        /// <summary>
        /// 获得或者设置批号。
        /// </summary>
        /// <value>批号。</value>
        /// <remarks></remarks>
        [DataMember]
        public string GrantNumber
        {
            get;
            set;
        }

        /// <summary>
        /// 获得或者设置开工日期。
        /// </summary>
        /// <value>开工日期。</value>
        /// <remarks></remarks>
        [DataMember]
        public DateTime? StartDate
        {
            get;
            set;
        }

        /// <summary>
        /// 获得或者设置竣工日期。
        /// </summary>
        /// <value>竣工日期。</value>
        /// <remarks></remarks>
        [DataMember]
        public DateTime? CompletionDate
        {
            get;
            set;
        }

        /// <summary>
        /// 获得或者设置项目负责人。
        /// </summary>
        /// <value>项目负责人。</value>
        /// <remarks></remarks>
        [DataMember]
        public string ProjectLeader
        {
            get;
            set;
        }

        /// <summary>
        /// 获得或者设置技术负责人。
        /// </summary>
        /// <value>技术负责人。</value>
        /// <remarks></remarks>
        [DataMember]
        public string TechnicalChief
        {
            get;
            set;
        }

        /// <summary>
        /// 获得或者设置质量负责人。
        /// </summary>
        /// <value>质量负责人。</value>
        /// <remarks></remarks>
        [DataMember]
        public string QualityChief
        {
            get;
            set;
        }

        /// <summary>
        /// 获得或者设置预算。
        /// </summary>
        /// <value>预算。</value>
        /// <remarks></remarks>
        [DataMember]
        public decimal? Budget
        {
            get;
            set;
        }

        /// <summary>
        /// 获得或者设置批复预算。
        /// </summary>
        /// <value>批复预算。</value>
        /// <remarks></remarks>
        [DataMember]
        public decimal? ApprovedBudget
        {
            get;
            set;
        }

        /// <summary>
        /// 获得或者设置创建日期。
        /// </summary>
        /// <value>创建日期。</value>
        /// <remarks></remarks>
        [DataMember]
        public DateTime CreateDate
        {
            get;
            set;
        }

        /// <summary>
        /// 获得或者设置审核日期。
        /// </summary>
        /// <value>审核日期。</value>
        /// <remarks></remarks>
        [DataMember]
        public DateTime? ApprovedDate
        {
            get;
            set;
        }

        /// <summary>
        /// 获得或者设置关闭日期。
        /// </summary>
        /// <value>关闭日期。</value>
        /// <remarks></remarks>
        [DataMember]
        public DateTime? CloseDate
        {
            get;
            set;
        }

        /// <summary>
        /// 获得或者设置项目状态。
        /// </summary>
        /// <value>项目。</value>
        /// <remarks></remarks>
        [DataMember]
        public int State
        {
            get;
            set;
        }

        /// <summary>
        /// 获得或者设置项目附件。
        /// </summary>
        /// <value>
        /// 项目附件。
        /// </value>
        /// <remarks></remarks>
        /// <history>
        /// [zanezeng]               2012/03/08 12:06    创建
        /// </history>
        public Guid[] Attachments
        {
            get;
            set;
        }

        #endregion
    }
}